In a digital communication network such as a cellular communication network, packets may be exchanged between a device (e.g., a chip component, a client device, a mobile device, a user equipment, a terminal), a radio access network (RAN), a core network, and an application server. The application server may be part of, for example, a packet data network (PDN) (e.g., the Internet) and/or an Internet Protocol (IP) Multimedia Service (IMS) network.
The RAN may be a part of a cellular communication network (e.g., 4G, Long Term Evolution (LTE), LTE-Advanced (LTE-A), and future networks such as 5G). The cellular communication network (also referred to herein as the communication network) may include the RAN and a core network (CN) (e.g., an evolved packet core (EPC)). Packets exchanged between the device, the RAN, and the core network may be exchanged on a control-plane and on a user-plane. The packets may be exchanged in control-plane messages and user-plane messages. Control-plane messages may include control signals (e.g., control signaling, control-plane signaling). User-plane messages may include user data (e.g., user data traffic, data traffic).
Packets traveling in the uplink and downlink directions may be forwarded through bearers (e.g., IP Connectivity Access Network (IP-CAN) bearers), or more generally (e.g., in a cellular communication network where bearers may not be defined or may not be used) may be forwarded in data flows. As known to those of skill in the art, the direction of data flowing toward a device may be referred to as the downlink direction, while the direction of data flowing from the device may be referred to as the uplink direction.
Using the downlink direction for exemplary purposes, downlink Internet Protocol (IP) packets (hereinafter “downlink data packets”) flow into a core network from, for example, a PDN (e.g., the Internet). The downlink data packets may enter the core network via a packet data network gateway device (P-GW). The P-GW may be an enforcement point for network policies (e.g., core network policies). The P-GW may enforce network policies (e.g., downlink policies) on the downlink data packets.
The handling of the downlink data packets at the P-GW may require the various downlink data packets to be mapped to various bearers or data flows in the cellular communication network. The various bearers or data flows may support, for example, various different maximum bit rates (MBR) and/or other parameters that may influence QoS.
A present solution for mapping is realized using packet inspections (e.g., deep packet inspections and/or shallow packet inspections), traffic flow templates (TFT), and service data flow (SDF) templates. The present solution is referred to herein as the TFT/SDF approach. In the TFT/SDF approach, a P-GW confirms that the downlink data packets conform to a TFT/SDF template defined for the application service(s) by inspecting the headers of each downlink data packet.
The TFT/SDF approach entails the passage of downlink data packets through a set of packet filters in the SDF templates in order, for example, to map each downlink data packet to a bearer.
FIG. 1 illustrates a role of an service data flow (SDF) template 102 in detecting a downlink part of service data flows (a-f) 104 (e.g., from a stream of downlink data packets 106) and mapping that downlink part to data flows or bearers such as the IP-CAN bearers 108 shown, according to the prior art. Any packet that does not correspond to an SDF template 102 may be delivered to a discard 110 location. FIG. 1 is based on Third Generation Partnership Project (3GPP) technical specification (TS) 23.203, FIG. 6.4.
The SDF template 102 is used in a procedure to validate and map each downlink data packet in the stream of downlink data packets 106. The SDF template 102 is used for filtering. Mapping may be done by a certain function that applies a data packet to a corresponding SDF filter. Then, the SDF filter enforces policies. However, use of the sets of packet filters in the SDF template 102 entails the use of tables and table lookup procedures. Use of such tables and procedures affects efficiency in that the tables take up memory/storage space and execution of the procedures expends processor resources. Additionally, time resources are wasted in that each packet in the stream of downlink data packets 106 must be filtered through one or more filters within each SDF template 102 before any given packet in the stream of downlink data packets 106 is applied to an SDF template 102 that meets all of the requirements of the one or more filters therein.
Using packet inspections (e.g., deep packet inspections and/or shallow packet inspections) and TFT/SDF templates at the P-GW, for example, for access and policy enforcement of downlink traffic, may incur overhead (e.g., processing and memory resources for memory lookup and pattern matching) and adds forwarding latency due to processing delay. Additionally, fine-grain policy control (e.g., per application service) is difficult because additional policy control would incur additional overhead and processing delay. Furthermore, use of TFT/SDF templates is not scalable for sponsored connectivity. For example, an increase in the number of sponsors of different application services (perhaps thousands of new application services in years to come) would mean an increase in the time needed to filter packets through an increased number of templates. This, again, would incur additional overhead and processing delay.
What is desired is a way to improve efficiency in access and policy enforcement for downlink traffic.